<template>
 <div class="todo-footer" v-show="total">
    <label for="">
      <!-- <input type="checkbox" :checked="isAll" @change="checkAll"> -->
      <input type="checkbox" v-model="isAll" />
      <span> 已完成 {{doneTotal}} / 全部 {{total}}</span>
    </label>
    <button class="btn btn-danger" @click="clearAll">清除已完成任务</button>
 </div>
</template>

<script>

export default {
  name: 'TodoFooter',
  props: ['todos', 'checkAllTodo', 'clearAllTodo'],
  computed: {
    total() {
      return this.todos.length
    },
    doneTotal() {
      // 在合适的时候发出合适的请求，拿回合适的数据，展示合适的位置 > 6
      return this.todos.reduce((pre, current)=>{
        // console.log('@', pre, current)
        return pre + (current.done ? 1 : 0)
      }, 0)
    },
    // isAll() {
    //   return this.doneTotal === this.total && this.total > 0
    // }
    isAll: {
      get() {
        return this.doneTotal === this.total && this.total > 0
      },
      set(value) {
        this.checkAllTodo(value)
      }
    }
  },
  methods: {
    // checkAll(e) {
    //   this.checkAllTodo(e.target.checked)
    // },
    clearAll() {
      this.clearAllTodo()
    }
  }
}
</script>
<style lang="less" scpoed>
.todo-footer {
  height: 40px;
  line-height: 40px;
  padding-left: 6px;
  margin-top: 5px;
}
.todo-footer label {
  display: inline-block;
  margin-right: 20px;
  cursor: pointer;
}
.todo-footer label input {
  position: relative;
  top: -1px;
}
</style>
